package com.ruoyi.common.service;

import com.ruoyi.common.domain.po.BasePO;
import com.ruoyi.common.domain.qo.BaseQO;
import com.ruoyi.common.mapper.BaseMapper;
import lombok.SneakyThrows;

import java.util.List;

public interface BaseService<P extends BasePO, Q extends BaseQO<P>,M extends BaseMapper<P, Q>> {
    List<P> select(Q q);

    int insert(P p);

    int batchInsert(List<P> ls);

    P selectById(Long id);

    P selectExistsById(Long id);

    int update(Q q);

    int updateSelective(Q q);

    int batchUpdate(List<Q> qs);

    int batchUpdateSelective(List<Q> qs);

    int delete(Q q);
}
